﻿using System;
using System.ComponentModel;
using System.Xml.Serialization;
using DevExpress.Xpo;
using DevExpress.Xpo.Metadata;
using DevExpress.Xpo.Helpers;
using DevExpress.Data.Filtering;
using DevExpress.ExpressApp;
using DevExpress.Persistent.Base;
using DevExpress.Persistent.BaseImpl;
using DevExpress.Persistent.Validation;
namespace Top.Module.Domain
{
    [DefaultClassOptions]
    [Persistent("TopRoomType")]
    public class TopRoomType : BaseObject
    {
        //begin
        public TopRoomType()
        {}
        public TopRoomType(Session session) : base(session)
        {}
        public override void AfterConstruction(){base.AfterConstruction();}

        private string _Rid;
        public string Rid
        {
            get
            {
                return _Rid;
            }
            set
            {
                SetPropertyValue("Rid", ref _Rid, value);
            }
        }
        private string _Hid;
        public string Hid
        {
            get
            {
                return _Hid;
            }
            set
            {
                SetPropertyValue("Hid", ref _Hid, value);
            }
        }
        private string _Name;
        public string Name
        {
            get
            {
                return _Name;
            }
            set
            {
                SetPropertyValue("Name", ref _Name, value);
            }
        }
        private DateTime _Created;
        public DateTime Created
        {
            get
            {
                return _Created;
            }
            set
            {
                SetPropertyValue("Created", ref _Created, value);
            }
        }
        private DateTime _Modified;
        public DateTime Modified
        {
            get
            {
                return _Modified;
            }
            set
            {
                SetPropertyValue("Modified", ref _Modified, value);
            }
        }
        private long _Status;
        public long Status
        {
            get
            {
                return _Status;
            }
            set
            {
                SetPropertyValue("Status", ref _Status, value);
            }
        }
        private string _AliasName;
        public string AliasName
        {
            get
            {
                return _AliasName;
            }
            set
            {
                SetPropertyValue("AliasName", ref _AliasName, value);
            }
        }
        private TopRoom _TopRoom;
        public TopRoom Room
        {
            get
            {
                return _TopRoom;
            }
            set
            {
                SetPropertyValue("TopRoom", ref _TopRoom, value);
            }
        }
        private TopHotel _TopHotel;
        [Association("TopHotelRoomTypes", typeof(TopHotel))]
        public TopHotel Hotel
        {
            get
            {
                return _TopHotel;
            }
            set
            {
                SetPropertyValue("TopHotel", ref _TopHotel, value);
            }
        }
        //end


    }
}
